1. Technical Field
The present invention relates in general to a method and system for data processing and in particular to an improved method and system of user interface to a data processing system. Still more particularly, the present invention relates to an improved method and system for searching on a graphical user interface of a data processing system using a "highlighting" graphic device.
2. Description of the Related Art
Within data processing systems, user interface is accomplished in a variety of ways. An increasingly common type of user interface is a graphical user interface (GUI), which provides a user with a graphical and intuitive display of information. Typically, the user interacts with a GUI display with a graphical pointer, which a user controls utilizing a graphical pointing device, such as a mouse, track ball, or joystick. Depending upon the actions allowed by the application of operating system software, the user can select a widget (i.e. a user-discernible feature of the graphic display) by positioning the graphical pointer over the widget and depressing a button associated with the graphical pointing device. Furthermore, depending upon the type of widget, the user can relocate the widget within the graphical display utilizing the well-known drag-and-drop technique. Conventionally, the motion of the graphical pointer within the GUI display has a fixed relationship to the manipulation of the graphical pointing device over all portions of the graphical display. For example, if the user moves the graphical pointing device two units to the right, the graphical pointer responds by moving two scaled units to the right within the graphical display.
A known GUI interface is an Internet Web browser. In the Web environment, client machines effect transactions to Web servers use the Hypertext Transfer Protocol (HTTP), which is a known application protocol providing users access to files (e.g., text, graphics, images, sound, video, etc.) using a standard page description language known as Hypertext Markup Language (HTML). HTML provides basic document formatting and allows the developer to specify "links" to other servers and files. In the Internet paradigm, a network path to a server is identified by a so-called Uniform Resource Locator (URL) having a special syntax for defining a network connection. Use of an HTML-compatible browser (e.g., Netscape Navigator or Microsoft Internet Explorer) at a client machine involves specification of a link via the URL. In response, the client makes a request to the server identified in the link and receives in return a document or object formatted according to HTML. One of the most common usages of the Web browser is to specify a WWW search. Typically, this is accomplished by the user structuring a "search" (usually a word or words and some associated operator(s)) and then entering the search into a search or other dialog box on the interface. The search is then processed using a search engine, with the results then being returned to the user. Conventional Internet search services include those operated by Infoseek, HotBot, Excite, Lycos and AltaVista, among others.
Known search interfaces such as those described above have several shortcomings. In particular, a search service should be easy to understand, easy to use, and it should provide acceptable and useful results to novice, casual and expert users alike. Current GUI search mechanisms attempt to solve this problem by providing one of several options. A first approach, which is implemented in the Web browser, is for the user to simply type in a word or words that are used for the search. Although this interface is simple, it often provides too many results to be of practical use. It is not clear to the novice or casual user how to specify more complex searches. A second approach is to use a guided interface in which the user types in search terms and then has the option of changing certain default parameters, often by selecting a button that identifies the boolean logic used in the search or by describing the effect of the logic on the search results. While more useful than a simple user-controlled text search, this technique increases the complexity of the interface and requires more display screen real estate for implementation. Another approach is a command line style interface in which the user directly enters search terms and logic syntax to define the search parameters. While this approach provides even more flexibility, it often requires detailed knowledge of the specific grammer and syntax used by the specific search engine.
Thus, in the prior art, search engines and their associated interfaces are typically simple, yet inefficient, or they are efficient but complex or arcane. The present invention addresses these and other shortcomings of the prior art by providing a novel interface to an interactive search tool that provides significant advantages over known techniques.